Two-dimensional pyramid filter architecture

ABSTRACT

Embodiments of a two-dimensional pyramid filter architecture are described.

[0001] This application is a continuation of application Ser. No. 09/846,609, filed Apr. 30, 2001.

RELATED APPLICATIONS

[0002] This patent application is related to U.S. patent application Ser. No. 09/754,684, titled “Multiplierless Pyramid Filter,” filed Jan. 3, 2001, by Tinku Acharya; U.S. patent application Ser. No. 09/817,711, titled “Two-Dimensional Pyramid Filter Architecture,” (attorney docket 042390.P11275), filed Mar. 26, 2001, by Tinku Acharya; U.S. patent application Ser. No. 09/820,108, titled “Pyramid Filter,” (attorney docket 042390.P11211), filed Mar. 28, 2001, by Tinku Acharya; U.S. patent application Ser. No. 09/823,212, titled “Two-Dimensional Pyramid Filter Architecture,” (attorney docket 042390.P11276), filed Mar. 30, 2001, by Tinku Acharya, and U.S. patent application Ser. No. 09/823,390, titled “Two-Dimensional Pyramid Filter Architecture,” (attorney docket 042390.P11277), filed Mar. 30, 2001, by Tinku Acharya, all assigned to the assignee of the presently claimed subject matter and herein incorporated by reference.

BACKGROUND

[0003] This disclosure is related to pyramid filters.

[0004] In image processing, it is often-desirable to decompose an image, such as a scanned color image, into two or more separate image representations. For example, a color or gray-scale document image can be decomposed into background and foreground images for efficient image processing operations, such as enhancement, compression, etc., as are at times applied in a typical photocopying machine or scanner device. In this context, this operation is often referred to as a descreening operation. This descreening is also sometimes applied to remove halftone patterns that may exist in an original scanned image. For example, these halftone patterns may cause objectionable artifacts for human eyes if not properly removed. The traditional approach for this decomposition or descreening is to filter the color image in order to blur it. These blurred results are then used to assist in determining how much to blur and sharpen the image in order to produce the decomposition. Typically this blurring can be achieved using a “symmetric pyramid” filter. Symmetric pyramid finite impulse response (FIR) filters are well-known.

[0005] One disadvantage of this image processing technique, however, is that the complexity increases many fold when a number of pyramid filters of different sizes is applied in parallel in order to generate multiple blurred images, to apply the technique as just described. A brute force approach for this multiple pyramid filtering approach is to use multiple FIR filters in parallel, as illustrated in FIG. 1. Such an approach demonstrates that the design and implementation of fast “symmetric pyramid filtering” architectures to generate different blurred images in parallel from a single source image may be desirable.

[0006] The numbers provided in parenthesis for each FIR block in FIG. 1 represents the pyramid filter of corresponding length. For example, (1, 2, 1) are the filter coefficients for a symmetric pyramid finite impulse response (FIR) filter of order or length 3. Likewise, (1, 2, 3, 2, 1) are the coefficients for an FIR pyramid filter of order 5, (1, 2, 3, 4, 3, 2, 1) are the coefficients for an FIR pyramid filter of order 7, (1, 2, 3, 4, 5, 4, 3, 2, 1) are the coefficients for an FIR pyramid filter of order 9, (1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1) are the coefficients for an FIR pyramid filter of order 11, and so forth.

[0007] Unfortunately, the approach demonstrated in FIG. 1 has disadvantages. For example, inefficiency may result from redundant computations. Likewise, FIR implementations frequently employ multiplier circuits. While implementations exist to reduce or avoid the use of multipliers, such as with shifting and summing circuitry, that may then result in increased clocking and, hence, may reduce circuit throughput. A need, therefore, exists for improving pyramid filtering implementations or architectures.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008] Subject matter is particularly pointed out and distinctly claimed in the concluding portion of the specification. The claimed subject matter, however, both as to organization and method of operation, together with objects, features, and appendages thereof, may best be understood by reference of the following detailed description when read with the accompanying drawings in which:

[0009]FIG. 1 is a block diagram illustrating a brute force approach to implementing a finite impulse response (FIR) multiple pyramid filtering architecture;

[0010]FIG. 2 is one embodiment of a one-dimensional multiplierless pyramid filter;

[0011]FIG. 3 is one embodiment of a two-dimensional pyramid filter architecture;

[0012]FIG. 4 is a table/matrix showing an example of a matrix that may result from implementing a two-dimensional pyramid filter architecture, such as one that may be implemented by the embodiment of FIG. 3;

[0013]FIG. 5 is a table/matrix showing an example of a two-dimensional signal that may be operated upon by a two-dimensional pyramid filter architecture;

[0014]FIG. 6 is a table/matrix showing an example of applying a one-dimensional pyramid filter kernel both row-wise and column-wise;

[0015]FIG. 7 is the table/matrix of FIG. 6 for k=11;

[0016]FIG. 8 is a table/matrix showing the result of applying a one-dimensional pyramid filter to the rows of a two-dimensional input signal sample matrix; and

[0017]FIG. 9 is a table/matrix showing the result of applying a one-dimensional pyramid filter to the columns of a two-dimensional input signal sample matrix.

DETAILED DESCRIPTION

[0018] In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the claimed subject matter. However, it will be understood by those skilled in the art that the claimed subject matter may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail in order so as not to obscure the claimed subject matter.

[0019] As previously described, pyramid filtering, in particular, symmetric pyramid filtering, may be employed in connection with color images or color image processing in order to decompose or descreen the image, such as into a background and foreground image, for example. Although the claimed subject matter is not limited in scope in this respect, in such a context, pyramid filtering architectures that reduce computational complexity or processing and/or hardware cost are particularly desirable. Likewise, implementations that are multiplerless, that is, do not specifically employ multiplication in the implementation, are also desirable usually because such implementations or embodiments are cheaper to implement than those that employ or include multiplier circuits.

[0020] Although the claimed subject matter is not limited in scope in this respect, FIG. 2 illustrates an embodiment 200 of a one-dimensional pyramid filter, such as described in more detail in aforementioned U.S. patent application Ser. No. 09/754,684, titled “Multiplierless Pyramid Filter,” by T. Acharya (attorney docket no. 042390.P10722), filed on Jan. 3, 2001. Embodiment 200 comprises a unified multiplierless cascaded symmetric pyramid filtering architecture to generate a multiple number of filtered output signal streams for a series or sequence of pyramid filters having different orders, the generation of the output signal streams occurring in parallel. In this particular embodiment, although, again, the claimed subject matter is not limited in scope in this respect, a filtered output signal stream is produced on every clock cycle for each pyramid filter of a different order being implemented. Therefore, in addition to being computationally efficient, this particular embodiment produces good results in terms of throughput. However, as previously indicated, this particular embodiment implements a one-dimensional pyramid filter.

[0021]FIG. 2 is understood in the context of specific notation. For example, an input source signal, X, may be designated as follows:

X=(x ₀ ,x ₁ , . . . ,x _(i−2) ,x _(i−1) ,x _(i) ,x _(i+1) ,x _(i+2), . . . )

[0022] In digital or discrete signal processing, filtering may be expressed as a convolution, X, of the input signal, X, and a filter, F, in this context a digital filter of finite length, referred to here as a finite impulse response (FIR) filter. Therefore, the filtered output signal stream is indicated as follows:

Y=X

F

[0023] As previously described, the particular embodiment in FIG. 2 employs pyramid filters. These filters are typically implemented using digital filters of lengths or orders that are odd, such as 3, 5, 7, 9, etc. Odd numbers or orders, in this context, may be expressed in the form 2N−1, where N is a positive integer greater than two, for example. Some examples of such digital filters are as follows:

F₃=(1,2,1)

F₅=(1,2,3,2,1)

F₇=(1,2,3,4,3,2,1)

F₉=(1,2,3,4,5,4,3,2,1)

F₁₁=(1,2,3,4,5,6,5,4,3,2,1)

F _(M)=(1,2,3, . . . , N, . . . , 3,2,1) (where, in this context, M=2N−1)

[0024] For the foregoing filters, the filtered output signals or output signal streams may be represented as follows:

B ³

=X

F ₃=(b ₀ ³ ,b ₁ ³, . . . , b_(i−1) ³ ,b _(i) ³ ,b _(i+1) ³, . . . ) result of input signal X filtered by F₃

B ⁵

=X

F ₅=(b ₀ ⁵ ,b ₁ ⁵, . . . , b_(i−1) ⁵ ,b _(i) ⁵ ,b _(i+1) ⁵, . . . ) result of input signal X filtered by F₃

B ⁷

=X

F ₇=(b ₀ ⁷ ,b ₁ ⁷, . . . , b_(i−1) ⁷ ,b _(i) ⁷ ,b _(i+1) ⁷, . . . ) result of input signal X filtered by F₃

B ⁹

=X

F ₉=(b ₀ ⁹ ,b ₁ ⁹, . . . , b_(i−1) ⁹ ,b _(i) ⁹ ,b _(i+1) ⁹, . . . ) result of input signal X filtered by F₃

B ¹¹

=X

F ₁₁=(b ₀ ¹¹ ,b ₁ ¹¹, . . . , b_(i−1) ¹¹ ,b _(i) ¹¹ ,b _(i+1) ¹¹, . . . ) result of input signal X filtered by F₁₁

[0025] . . .

B ^(M)

=X

F _(M)=(b₀ ^(M) ,b ₁ ^(M) , . . . , b _(i−1) ^(M) ,b _(i) ^(M) ,b _(i+1) ^(M), . . . ) result of input signal X filtered by FM

[0026] An alternate way to empirically represent these filtered output signal samples is as follows:

b _(i) ³ =x _(i−1)+2x _(i) +x _(i+1)

b _(i) ⁵ =x _(i−1)+2x _(i) +x _(i+1)

b _(i) ⁷ =x _(i−1)+2x _(i) +x _(i+1)

b _(i) ⁹ =x _(i−1)+2x _(i) +x _(i+1)

b _(i) ¹¹ =x _(i−1)+2x _(i) +x _(i+1)

[0027] Likewise, by introducing what is referred to, in this context, as state variables, the above expressions may be re-expressed as follows:

b _(i) ³ =x _(i) +s _(i) ³, where s _(i) ³ =x _(i−1) +x _(i) +x _(i+1)

b _(i) ⁵ =b _(i) ³ +s _(i) ⁵, where s _(i) ⁵ =x _(i−2) +x _(i−1) +x _(i) +x _(i+1) +x _(i+2)

b _(i) ⁷ =b _(i) ⁵ +s _(i) ⁷, where s _(i) ⁷ =x _(i−3) +x _(i−2) +x _(i−1) +x _(i) +x _(i+1) +x _(i+2) +x _(i+3)

b _(i) ⁹ =b _(i) ⁷ +s _(i) ⁹, where s _(i) ⁹ =x _(i−4) +x _(i−3) +x _(i−2) +x _(i−1) +x _(i) +x _(i+1) +x _(i+2) +x _(i+3) +x _(i+4)

b _(i) ¹¹ =b _(i) ⁹ +s _(i) ¹¹, where s _(i) ¹¹ =x _(i−5) +x _(i−4) +x _(i−3) +x _(i−2) +x _(i−1) +x _(i) +x _(i+1) +x _(i+2) +x _(i+3) +x _(i+4) +x _(i+5)

[0028] Hence, the desired pyramid filter may be expressed as follows:

B ³ =X+S ₃, where S ₃=(s ₀ ³ ,s ₁ ³ ,s ₂ ³ , . . . , s _(i−1) ³ ,s _(i) ³ ,s _(i+1) ³, . . . )

B ⁵ =B ³ +S ₅, where S ₃=(s ₀ ⁵ ,s ₁ ⁵ ,s ₂ ⁵ , . . . ,s _(i−1) ⁵ ,s _(i) ⁵ ,s _(i+1) ⁵, . . . )

B ⁷ =B ⁵ +S ₇, where S ₃=(s ₀ ⁷ ,s ₁ ⁷ ,s ₂ ⁷ , . . . ,s _(i−1) ⁷ ,s _(i) ⁷ ,s _(i+1) ⁷, . . . )

B ⁹ =B ⁷ +S ₉, where S ₃=(s ₀ ⁹ ,s ₁ ⁹ ,s ₂ ⁹ , . . . ,s _(i−1) ⁹ ,s _(i) ⁹ ,s _(i+1) ⁹, . . . )

B ¹¹ =B ⁹ +S ₁₁, where S ₃=(s ₀ ¹¹ ,s ₁ ¹¹ ,s ₂ ¹¹ , . . . ,s _(i−1) ¹¹ ,s _(i) ¹¹ ,s _(i+1) ¹¹, . . . )

[0029] A study of FIG. 2 illustrates that the computed output signal streams, B₃, B₅, B₇, B₉, B₁₁, etc. of the pyramid filters shown in FIG. 2 are produced by the embodiment illustrated.

[0030] The previous discussion of pyramid filters occurs in the context of one-dimensional filtering; however, due at least in part to the symmetric nature of such filters, it is possible to implement pyramid two-dimensional filtering instead of computing in a row-wise and column-wise one-dimensional fashion that employs extra computational steps. If we represent the one-dimensional k-tap pyramid filter as ${F_{k} = \begin{bmatrix} 1 & 2 & 3 & \cdots & \frac{k + 1}{2} & \cdots & 3 & 2 & 1 \end{bmatrix}},$

[0031] the corresponding two dimensional pyramid filter F_(k×k) may be derived as shown in FIG. 6. In FIG. 7, we have shown the two-dimensional pyramid filter kernel for k=11. Assuming a two-dimensional input signal, e.g., signal samples, having the form shown in FIG. 5, FIG. 4 is a table illustrating a matrix that may result, here a two-dimensional filtered signal sample output matrix, P^(k×k), in which the two dimensional input signal sample matrix is filtered using two-dimensional pyramid filter kernel F_(k×k).

[0032] The matrix shown in FIG. 8 may result from applying a one-dimensional k-tap pyramid filter in every row of the two-dimensional input signal sample matrix and the matrix shown in FIG. 9 may result from applying a one-dimensional k-tap pyramid filter in every column of the two-dimensional input signal sample matrix. The matrix in FIG. 4 may result from applying the two-dimensional (k×k) tap filter to the two dimensional input signal sample matrix or, alternatively, it may result from applying the one-dimensional k-tap pyramid filter row-wise and then followed by column-wise. Applying this approach to generate filtered signal sample outputs P^(1×3), P^(3×1), and P^(3×3), produces the following relationships:

P _(i,j) ^(1×3) =s _(i,j−1)+2s _(i,j) + _(i,j+1)

P _(i,j) ^(3×1) =s _(i−1,j)+2s _(i,j) +s _(i+1,j)

P _(i,j) ^(3×3) =s _(i−1,j−1)+2s _(i−1,j) +s _(i−1,j+1)+2s _(i,j−1)+4s _(i,j)+2s _(i,j+1) +s _(i+1,j−1)+2s _(i+1,j) +s _(i+1,j+1)

[0033] Generating filtered signal sample outputs P^(5×1), P^(5×1), P^(1×5) and P^(5×5), produces the following relationships:

P _(i,j) ^(5×1) =s _(i−2,j)+2s _(i−1,j)+3s _(i,j)+2s _(i+1,j) +s _(i+2,j)

P _(i,j) ^(1×5) =s _(i,j−2)+2s _(i,j−1)+3s _(i,j)+2s _(i,j+1) +s _(i,j+2) $\begin{matrix} {P_{i,j}^{5 \times 5} = {\left( {s_{{i - 2},{j - 2}} + {2s_{{i - 2},{j - 1}}} + {3s_{{i - 2},j}} + {2s_{{i - 2},{j + 1}}} + s_{{i - 2},{j + 2}}} \right) +}} \\ {{\left( {{2s_{{i - 1},{j - 2}}} + {4s_{{i - 1},{j - 1}}} + {6s_{{i - 1},j}} + {4s_{{i - 1},{j + 1}}} + {2s_{{i - 1},{j + 2}}}} \right) +}} \\ {{\left( {{3s_{i,{j - 2}}} + {6s_{i,{j - 1}}} + {9s_{i,j}} + {6s_{i,{j + 1}}} + {3s_{i,{j + 2}}}} \right) +}} \\ {{\left( {{2s_{{i + 1},{j - 2}}} + {4s_{{i + 1},{j - 1}}} + {6s_{{i + 1},j}} + {4s_{{i + 1},{j + 1}}} + {2s_{{i + 1},{j + 2}}}} \right) +}} \\ {\left( {s_{{i + 2},{j - 2}} + {2s_{{i + 2},{j - 1}}} + {3s_{{i + 2},j}} + {2s_{{i + 2},{j + 1}}} + s_{{i + 2},{j + 2}}} \right)} \end{matrix}$

[0034] Likewise, generating filtered signal samples outputs P^(7×1), P^(1×7), and P^(7×7), produces the following relationships:

P _(i,j) ^(7×1) =s _(i−3,j)+2s _(i−2,j)+3s _(i−1,j)+4s _(i,j)+3s _(i+1,j)+2s _(i+2,j) +s _(i+3,j)

P _(i,j) ^(1×7) =s _(i,j−3)+2s _(i,j−2)+3s _(i,j−1)+4s _(i,j)+3s _(i,j+1)+2s _(i,j+2) +s _(i,j+3) $\begin{matrix} {P_{i,j}^{7 \times 7} = \left( {s_{{i - 3},{j - 3}} + {2s_{{i - 3},{j - 2}}} + {3s_{{i - 3},{j - 1}}} + {4s_{{i - 3},j}} + {3s_{{i - 3},{j + 1}}} +} \right.} \\ {\left. {{2s_{{i - 3},{j + 2}}} + s_{{i - 3},{j + 3}}} \right) +} \\ {\left( {{2s_{{i - 2},{j - 3}}} + {4s_{{i - 2},{j - 2}}} + {6s_{{i - 2},{j - 1}}} + {8s_{{i - 2},j}} + {6s_{{i - 2},{j + 1}}} +} \right.} \\ {\left. {{4s_{{i - 2},{j + 2}}} + {2s_{{i - 2},{j + 3}}}} \right) +} \\ {\left( {{3s_{{i - 1},{j - 3}}} + {6s_{{i - 1},{j - 2}}} + {9s_{{i - 1},{j - 1}}} + {12s_{{i - 1},j}} + {9s_{{i - 1},{j + 1}}} +} \right.} \\ {\left. {{6s_{{i - 1},{j + 2}}} + {3s_{{i - 1},{j + 3}}}} \right) +} \\ {\left( {{4s_{i,{j - 3}}} + {8s_{i,{j - 2}}} + {12s_{i,{j - 1}}} + {16s_{i,j}} + {12s_{i,{j + 1}}} +} \right.} \\ {\left. {{8s_{i,{j + 2}}} + {4s_{i,{j + 3}}}} \right) +} \\ {\left( {{3s_{{i + 1},{j - 3}}} + {6s_{{i + 1},{j - 2}}} + {9s_{{i + 1},{j - 1}}} + {12s_{{i + 1},j}} + {9s_{{i + 1},{j + 1}}} +} \right.} \\ {\left. {{6s_{{i + 1},{j + 2}}} + {3s_{{i + 1},{j + 3}}}} \right) +} \\ {\left( {{2s_{{i + 2},{j - 3}}} + {4s_{{i + 2},{j - 2}}} + {6s_{{i + 2},{j - 1}}} + {8s_{{i + 2},j}} + {6s_{{i + 2},{j + 1}}} +} \right.} \\ {\left. {{4s_{{i + 2},{j + 2}}} + {2s_{{i + 2},{j + 3}}}} \right) +} \\ {\left( {s_{{i + 3},{j - 3}} + {2s_{{i + 3},{j - 2}}} + {3s_{{i + 3},{j - 1}}} + {4s_{{i + 3},j}} + {3s_{{i + 3},{j + 1}}} +} \right.} \\ \left. {{2s_{{i + 3},{j + 2}}} + s_{{i + 3},{j + 3}}} \right) \end{matrix}$

[0035] Likewise, generating filtered signal samples outputs P^(9×1), P^(1×9), and P^(9×9), produces the following relationships:

P _(i,j) ^(9×1) =s _(i−4,j)+2s _(i−3,j)+3s _(i−2,j)+4s _(i−1,j)+5s _(i,j)+4s _(i+1,j)+3s _(i+2,j)+2s _(i+3,j) +s _(i+4,j)

P _(i,j) ^(1×9) =s _(i,j−4)+2s _(i,j−3)+3s _(i,j−2)+4s _(i,j−1)+5s _(i,j)+4s _(i,j+1)+3s _(i,j+2)+2s _(i,j+3) +s _(i,j+4) $\begin{matrix} {P_{i,j}^{9 \times 9} = \left( {s_{{i - 4},{j - 4}} + {2s_{{i - 4},{j - 3}}} + {3s_{{i - 4},{j - 2}}} + {4s_{{i - 4},{j - 1}}} + {5s_{{i - 4},j}} +} \right.} \\ {\left. {{4s_{{i - 4},{j + 1}}} + {3s_{{i - 4},{j + 2}}} + {2s_{{i - 4},{j + 3}}} + s_{{i - 4},{j + 4}}} \right) +} \\ {\left( {{2s_{{i - 3},{j - 4}}} + {4s_{{i - 3},{j - 3}}} + {6s_{{i - 3},{j - 2}}} + {8s_{{i - 3},{j - 1}}} + {10s_{{i - 3},j}} +} \right.} \\ {\left. {{8s_{{i - 3},{j + 1}}} + {6s_{{i - 3},{j + 2}}} + {4s_{{i - 3},{j + 3}}} + {2s_{{i - 3},{j + 4}}}} \right) +} \\ {\left( {{3s_{{i - 2},{j - 4}}} + {6s_{{i - 2},{j - 3}}} + {9s_{{i - 2},{j - 2}}} + {12s_{{i - 2},{j - 1}}} + {15s_{{i - 2},j}} +} \right.} \\ {\left. {{12s_{{i - 2},{j + 1}}} + {9s_{{i - 2},{j + 2}}} + {6s_{{i - 2},{j + 3}}} + {3s_{{i - 2},{j + 4}}}} \right) +} \\ {\left( {{4s_{{i - 1},{j - 4}}} + {8s_{{i - 1},{j - 3}}} + {12s_{{i - 1},{j - 2}}} + {16s_{{i - 1},{j - 1}}} + {20s_{{i - 1},j}} +} \right.} \\ {\left. {{16s_{{i - 1},{j + 1}}} + {12s_{{i - 1},{j + 2}}} + {8s_{{i - 1},{j + 3}}} + {4s_{{i - 1},{j + 4}}}} \right) +} \\ {\left( {{5s_{i,{j - 4}}} + {10s_{i,{j - 3}}} + {15s_{i,{j - 2}}} + {20s_{i,{j - 1}}} + {25s_{i,j}} +} \right.} \\ {\left. {{20s_{i,{j + 1}}} + {15s_{i,{j + 2}}} + {10s_{i,{j + 3}}} + {5s_{i,{j + 4}}}} \right) +} \\ {\left( {{4s_{{i + 1},{j - 4}}} + {8s_{{i + 1},{j - 3}}} + {12s_{{i + 1},{j - 2}}} + {16s_{{i + 1},{j - 1}}} + {20s_{{i + 1},j}} +} \right.} \\ {\left. {{16s_{{i + 1},{j + 1}}} + {12s_{{i + 1},{j + 2}}} + {8s_{{i + 1},{j + 3}}} + {4s_{{i + 1},{j + 4}}}} \right) +} \\ {\left( {{3s_{{i + 2},{j - 4}}} + {6s_{{i + 2},{j - 3}}} + {9s_{{i + 2},{j - 2}}} + {12s_{{i + 2},{j - 1}}} + {15s_{{i + 2},j}} +} \right.} \\ {\left. {{12s_{{i + 2},{j + 1}}} + {9s_{{i + 2},{j + 2}}} + {6s_{{i + 2},{j + 3}}} + {3s_{{i + 2},{j + 4}}}} \right) +} \\ {\left( {{2s_{{i + 3},{j - 4}}} + {4s_{{i + 3},{j - 3}}} + {6s_{{i + 3},{j - 2}}} + {8s_{{i + 3},{j - 1}}} + {10s_{{i + 3},j}} +} \right.} \\ {\left. {{8s_{{i + 3},{j + 1}}} + {6s_{{i + 3},{j + 2}}} + {4s_{{i + 3},{j + 3}}} + {2s_{{i + 3},{j + 4}}}} \right) +} \\ {\left( {s_{{i + 4},{j - 4}} + {2s_{{i + 4},{j - 3}}} + {3s_{{i + 4},{j - 2}}} + {4s_{{i + 4},{j - 1}}} + {5s_{{i + 4},j}} +} \right.} \\ \left. {{4s_{{i + 4},{j + 1}}} + {3s_{{i + 4},{j + 2}}} + {2s_{{i + 4},{j + 3}}} + s_{{i + 4},{j + 4}}} \right) \end{matrix}$

[0036] Furthermore, generating filtered signal samples outputs P^(11×1), P^(1×11), and P^(11×11), produces the following relationships:

P _(i,j) ^(11×1) =s _(i−5,j)+2s _(i−4,j)+3s _(i−3,j)+4s _(i−2,j)+5s _(i−1,j)+6s _(i,j)+5s _(i+1,j)+4s _(1+2,j)+3s _(i+3,j)+2s _(i+4,j) +s _(i+5,j)

P _(i,j) ^(1×11) =s _(i,j−5)+2s _(i,j−4)+3s _(i,j−3)+4s _(i,j−2)+5s _(i,j−1)+6s _(i,j)+5s _(i,j+1)+4s _(i,j+2)+3s _(i,j+3)+2s _(i,j+4) +s _(i,j+5) $\begin{matrix} {P_{i,j}^{11 \times 11} = \left( {s_{{i - 5},{j - 5}} + {2s_{{i - 5},{j - 4}}} + {3s_{{i - 5},{j - 3}}} + {4s_{{i - 5},{j - 2}}} +} \right.} \\ {{{5s_{{i - 5},{j - 1}}} + {6s_{{i - 5},j}} + {5s_{{i - 5},{j + 1}}} + {4s_{{i - 5},{j + 2}}} +}} \\ {\left. {{3s_{{i - 5},{j + 3}}} + {2s_{{i - 5},{j + 4}}} + s_{{i - 5},{j + 5}}} \right) +} \\ {\left( {{2s_{{i - 4},{j - 5}}} + {4s_{{i - 4},{j - 4}}} + {6s_{{i - 4},{j - 3}}} + {8s_{{i - 4},{j - 2}}} +} \right.} \\ {{{10s_{{i - 4},{j - 1}}} + {12s_{{i - 4},j}} + {10s_{{i - 4},{j + 1}}} + {8s_{{i - 4},{j + 2}}} +}} \\ {\left. {{6s_{{i - 4},{j + 3}}} + {4s_{{i - 4},{j + 4}}} + {2s_{{i - 4},{j + 5}}}} \right) +} \\ {\left( {{3s_{{i - 3},{j - 5}}} + {6s_{{i - 3},{j - 4}}} + {9s_{{i - 3},{j - 3}}} + {12s_{{i - 3},{j - 2}}} +} \right.} \\ {{{15s_{{i - 3},{j - 1}}} + {18s_{{i - 3},j}} + {15s_{{i - 3},{j + 1}}} + {12s_{{i - 3},{j + 2}}} +}} \\ {\left. {{9s_{{i - 3},{j + 3}}} + {6s_{{i - 3},{j + 4}}} + s_{{i - 3},{j + 5}}} \right) +} \\ {\left( {{4s_{{i - 2},{j - 5}}} + {8s_{{i - 2},{j - 4}}} + {12s_{{i - 2},{j - 3}}} + {16s_{{i - 2},{j - 2}}} +} \right.} \\ {{{20s_{{i - 2},{j - 1}}} + {24s_{{i - 2},j}} + {20s_{{i - 2},{j + 1}}} + {16s_{{i - 2},{j + 2}}} +}} \\ {\left. {{12s_{{i - 2},{j + 3}}} + {8s_{{i - 2},{j + 4}}} + {4s_{{i - 2},{j + 5}}}} \right) +} \\ {\left( {{5s_{{i - 1},{j - 5}}} + {10s_{{i - 1},{j - 4}}} + {15s_{{i - 1},{j - 3}}} + {20s_{{i - 1},{j - 2}}} +} \right.} \\ {{{25s_{{i - 1},{j - 1}}} + {30s_{{i - 1},j}} + {25s_{{i - 1},{j + 1}}} + {20s_{{i - 1},{j + 2}}} +}} \\ {\left. {{15s_{{i - 1},{j + 3}}} + {10s_{{i - 1},{j + 4}}} + {5s_{{i - 1},{j + 5}}}} \right) +} \\ {\left( {{6s_{i,{j - 5}}} + {12s_{i,{j - 4}}} + {18s_{i,{j - 3}}} + {24s_{i,{j - 2}}} +} \right.} \\ {{{30s_{i,{j - 1}}} + {36s_{i,j}} + {30s_{i,{j + 1}}} + {24s_{i,{j + 2}}} +}} \\ {\left. {{18s_{i,{j + 3}}} + {12s_{i,{j + 4}}} + {6s_{i,{j + 5}}}} \right) +} \\ {\left( {{5s_{{i + 1},{j - 5}}} + {10s_{{i + 1},{j - 4}}} + {15s_{{i + 1},{j - 3}}} + {20s_{{i + 1},{j - 2}}} +} \right.} \\ {{{25s_{{i + 1},{j - 1}}} + {30s_{{i + 1},j}} + {25s_{{i + 1},{j + 1}}} + {20s_{{i + 1},{j + 2}}} +}} \\ {\left. {{15s_{{i + 1},{j + 3}}} + {10s_{{i + 1},{j + 4}}} + {5s_{{i + 1},{j + 5}}}} \right) +} \\ {\left( {{4s_{{i + 2},{j - 5}}} + {8s_{{i + 2},{j - 4}}} + {12s_{{i + 2},{j - 3}}} + {16s_{{i + 2},{j - 2}}} +} \right.} \\ {{{20s_{{i + 2},{j - 1}}} + {24s_{{i + 2},j}} + {20s_{{i + 2},{j + 1}}} + {16s_{{i + 2},{j + 2}}} +}} \\ {\left. {{12s_{{i + 2},{j + 3}}} + {8s_{{i + 2},{j + 4}}} + {4s_{{i + 2},{j + 5}}}} \right) +} \\ {\left( {{3s_{{i + 3},{j - 5}}} + {6s_{{i + 3},{j - 4}}} + {9s_{{i + 3},{j - 3}}} + {12s_{{i + 3},{j - 2}}} +} \right.} \\ {{{15s_{{i + 3},{j - 1}}} + {18s_{{i + 3},j}} + {15s_{{i + 3},{j + 1}}} + {12s_{{i + 3},{j + 2}}} +}} \\ {\left. {{9s_{{i + 3},{j + 3}}} + {6s_{{i + 3},{j + 4}}} + {3s_{{i + 3},{j + 5}}}} \right) +} \\ {\left( {{2s_{{i + 4},{j - 5}}} + {4s_{{i + 4},{j - 4}}} + {6s_{{i + 4},{j - 3}}} + {8s_{{i + 4},{j - 2}}} +} \right.} \\ {{{10s_{{i + 4},{j - 1}}} + {12s_{{i + 4},j}} + {10s_{{i + 4},{j + 1}}} + {8s_{{i + 4},{j + 2}}} +}} \\ {\left. {{6s_{{i + 4},{j + 3}}} + {4s_{{i + 4},{j + 4}}} + {2s_{{i + 4},{j + 5}}}} \right) +} \\ {\left( {s_{{i + 5},{j - 5}} + {2s_{{i + 5},{j - 4}}} + {3s_{{i + 5},{j - 3}}} + {4s_{{i + 5},{j - 2}}} +} \right.} \\ {{{5s_{{i + 5},{j - 1}}} + {6s_{{i + 5},j}} + {5s_{{i + 5},{j + 1}}} + {4s_{{i + 5},{j + 2}}} +}} \\ \left. {{3s_{{i + 5},{j + 3}}} + {2s_{{i + 5},{j + 4}}} + s_{{i + 5},{j + 5}}} \right) \end{matrix}$

[0037] Mathematical manipulation may be employed to produce the following: $\begin{matrix} \begin{matrix} {P_{i,j}^{11 \times 11} = {\left( {P_{{i - 1},{j - 1}}^{9 \times 9} + P_{{i - 1},{j + 1}}^{9 \times 9} + P_{{i + 1},{j - 1}}^{9 \times 9} + P_{{i + 1},{j + 1}}^{9 \times 9}} \right) -}} \\ {\left( {P_{i,{j - 3}}^{11 \times 1} + {2P_{i,{j - 2}}^{11 \times 1}} + {3P_{i,{j - 1}}^{11 \times 1}} + {2P_{i,j}^{11 \times 1}} + {3P_{i,{j + 1}}^{11 \times 1}} +} \right.} \\ {\left. {{2P_{i,{j + 2}}^{11 \times 1}} + P_{i,{j + 3}}^{11 \times 1}} \right) -} \\ {\left( {P_{{i - 3},j}^{1 \times 11} + {2P_{{i - 2},j}^{1 \times 11}} + {3P_{{i - 1},j}^{1 \times 11}} + {2P_{i,j}^{1 \times 11}} + {3P_{{i + 1},j}^{1 \times 11}} +} \right.} \\ {\left. {{2P_{{i + 2},j}^{1 \times 11}} + P_{{i + 3},j}^{1 \times 11}} \right) -} \\ {{P_{i,j}^{7 \times 7} + {2\left( {P_{i,j}^{7 \times 1} + P_{i,j}^{1 \times 7}} \right)} - {4s_{i,j}}}} \end{matrix} & \lbrack 1\rbrack \end{matrix}$

[0038] Equation [1] above illustrates that a direct two-dimensional pyramid filter architecture of order 2N−1, in this case where N is six, may potentially be implemented using either four two-dimensional pyramid filters of order [2(N−1)−1], that is nine, or one two-dimensional pyramid filter of order [2(N−1)−1] using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9) and fourteen one-dimensional pyramid filters of order 2N−1, here eleven, the filters being row-wise and column-wise, in this example. It also employs one two-dimensional pyramid filter of order [2(N−2)−1] that is seven here, to produce P_(i,j) ^(7×7) and two one-dimensional pyramid filters of order [2(N−2)−1], that is seven here, to produce two signal sample matrices P_(i,j) ^(7×1), P_(i,j) ^(1×7), in this example. FIG. 3 is a schematic diagram illustrating such an embodiment, although, of course, the claimed subject matter is not limited in scope to this particular implementation or embodiment. For example, the output signal samples corresponding to those produced by four two-dimensional pyramid filters of order 2(N−1)−1, here order nine where N is six, and also the output signal samples produced by two-dimensional pyramid filter of order 2(N−2)−1, here order seven, may not necessarily be produced by two-dimensional pyramid filters. As just one example, these output signals may be produced using one-dimensional pyramid filters. One such filter is shown in FIG. 2, although, again, additional approaches to producing the output signals for the architecture shown in FIG. 3 may also be employed.

[0039]FIG. 3 illustrates an integrated circuit (IC), 300, although, of course, alternative embodiments may not necessarily be implemented on a single integrated circuit chip. IC 300 includes a two-dimensional pyramid filter architecture of an order 2N−1, where N is a positive integer greater than five, here six, in operation, capable of producing, on respective clock cycles, at least the following. Pyramid filtered output signals are produced corresponding to output signals produced by fourteen one-dimensional pyramid filters of order 2N−1, again, eleven in this example where N is six, 330, 332, 334, 340, 342, 344, 350, 352, 354, 360, 362, 364, 366, and 368 in FIG. 3. Pyramid filtered output signals are also produced corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid of order [2(N−1)−1] or nine here, where N is six, using signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9). These output signals are summed by adder 310 in FIG. 3. Pyramid filtered output signals are also produced corresponding to output signals produced by one two-dimensional pyramid filter of order [2(N−2)−1] or seven here, where N is six, using signal sample matrix P_(i,j) ^(7×7) and two one-dimensional pyramid filter of order 2(N−2)−1 using signal sample matrices P_(i,j) ^(7×1), P_(i,j) ^(1×7). These three output signals P_(i,j) ^(7×7), P_(i,j) ^(7×1), P_(i,j) ^(1×7) and the input signal s_(i,j) are summed by adder 390 in FIG. 3. Likewise, the respective output signals in this two dimensional pyramid filter architecture implementation, in the implementation in FIG. 3, for example, the output signals of 330, 332, 334, 340, 342, 344, 350, 352, 354, 360, 362, 364, 366, and 368 are summed on respective clock cycles of the two dimensional pyramid filter architecture, by adders 370 and 375 in FIG. 3. Adder 380 sums the output signals of 310, 370, 375 and 390. Of course, FIG. 3 is just one possible example of an implementation and the claimed subject matter is not limited in scope to this or to another particular implementation.

[0040] For example, N is not limited to six. Likewise, the pyramid filtered output signals that correspond to output signals produced by a two-dimensional pyramid filter are not limited to being implemented by one-dimensional pyramid filters or to two-dimensional pyramid filters. Likewise, as previously indicated, if one-dimensional filters are employed, then the filters are not limited to the implementation approach described in aforementioned U.S. patent application Ser. No. 09/754,684, titled “Multiplierless Pyramid Filter,” filed Jan. 3, 2001, by Tinku Acharya, or in aforementioned U.S. patent application Ser. No. ______, titled “Pyramid Filter,” (attorney docket 042390.P11211), filed on Mar. 28, 2001, by Tinku Acharya. For example, one-dimensional pyramid filters other than multiplierless pyramid filters may be employed. Likewise, depending on the implementation, different numbers of such pyramid filters and different orders of such pyramid filters may be employed. For example, the output signals may be combined or processed in a way to produce pyramid filtered output signals corresponding to pyramid filters of a different number, dimension, or order.

[0041] It will, of course, be understood that, although particular embodiments have just been described, the claimed subject matter is not limited in scope to a particular embodiment or implementation. For example, one embodiment may be in hardware, whereas another embodiment may be in software. Likewise, an embodiment may be in firmware, or any combination of hardware, software, or firmware, for example. Likewise, although the claimed subject matter is not limited in scope in this respect, one embodiment may comprise an article, such as a storage medium. Such a storage medium, such as, for example, a CD-ROM, or a disk, may have stored thereon instructions, which when executed by a system, such as a computer system or platform, or an imaging system, for example, may result in an embodiment of a method in accordance with the claimed subject matter being executed, such as an embodiment of a method of filtering or processing an image or video, for example, as previously described. For example, an image processing platform or an imaging processing system may include an image processing unit, a video or image input/output device and/or memory.

[0042] While certain features of the claimed subject matter have been illustrated and described herein, many modifications, substitutions, changes and equivalents will now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the claimed subject matter. 

1. An integrated circuit comprising: a two-dimensional pyramid filter architecture of an order 2N−1, where N is a positive integer greater than five; said two dimensional pyramid filter architecture of order 2N−1, in operation, capable of producing, on respective clock cycles, at least the following: pyramid filtered output signals corresponding to output signals produced by fourteen one-dimensional pyramid filters of order 2N−1; and pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1]; wherein the respective output signals in said two dimensional pyramid filter architecture are summed on respective clock cycles of said two dimensional pyramid filter architecture.
 2. The integrated circuit of claim. 1, wherein N is six; and wherein said two dimensional pyramid filter architecture of order eleven, in operation, capable of producing, on respective clock cycles, the pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid of order nine using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9), the pyramid filtered output signals being produced by a plurality of one-dimensional pyramid filters.
 3. The integrated circuit of claim 2, wherein said one-dimensional pyramid filters comprise a sequence of scalable cascaded multiplerless operational units, each of said operational units capable of producing a different order pyramid filtered output signal sample stream.
 4. The integrated circuit of claim 2, wherein said one-dimensional pyramid filters comprise other than one-dimensional multiplierless pyramid filters.
 5. The integrated circuit of claim 2, wherein said two dimensional pyramid filter architecture of order eleven, in operation, capable of producing, on respective clock cycles, the pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid of order seven using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9), the pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters being produced by eight one-dimensional pyramid filters of order nine.
 6. The integrated circuit of claim 5, wherein, of the eight one-dimensional pyramid filters of order nine, four are applied row-wise and four are applied column-wise.
 7. The integrated circuit of claim 5, wherein said two dimensional pyramid filter architecture of order eleven, in operation, capable of producing, on respective clock cycles, the pyramid filtered output signals corresponding to output signals produced by four two-dimensional pyramid filters of order nine, the pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters being produced by eight one-dimensional multiplierless pyramid filters of order nine.
 8. The integrated circuit of claim 7, wherein, of the eight one-dimensional pyramid filters of order nine, four are applied row-wise and four are applied column-wise.
 9. The integrated circuit of claim 2, wherein said two dimensional pyramid filter architecture of order eleven, in operation, capable of producing, on respective clock cycles, the pyramid filtered output signals corresponding to output signals produced by four two-dimensional pyramid filters of order nine, the pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters being produced by other than one-dimensional multiplierless pyramid filters.
 10. The integrated circuit of claim 1, wherein N is six; said two dimensional pyramid filter architecture of order eleven, in operation, being capable of producing, on respective clock cycles, at least the following: output signals produced by four two-dimensional pyramid filters of order nine.
 11. The integrated circuit of claim 1, wherein said two dimensional pyramid filter architecture of order eleven, in operation, capable of producing, on respective clock cycles, the pyramid filtered output signals corresponding to output signals produced by four two-dimensional pyramid filters of order nine, the pyramid filtered output signals being produced by one or more two-dimensional pyramid filters other than four two-dimensional pyramid filters.
 12. A method of filtering an image using a two-dimensional pyramid filter architecture of order 2N−1, where N is a positive integer greater than five, said method comprising: summing, on respective clock cycles of said two dimensional pyramid filter architecture, the following: pyramid filtered output signals corresponding to output signals produced by fourteen one-dimensional pyramid filters of order 2N−1; and pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1].
 13. The method of claim 12, wherein N is six; pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1] comprising output signals produced by four two-dimensional pyramid filters of order nine.
 14. The method of claim 12, wherein N is six; and wherein the pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order nine using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9) comprise pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters.
 15. The method of claim 14, wherein said one-dimensional pyramid filters comprise a sequence of scalable cascaded multiplerless operational units, each of said operational units capable of producing a different order pyramid filtered output signal sample stream.
 16. An article comprising: a storage medium, said storage medium having stored thereon instructions, that, when executed result in filtering an image using a two-dimensional pyramid filter architecture of order 2N−1, where N is a positive integer greater than five, by: summing, on respective clock cycles of said two dimensional pyramid filter architecture, the following: pyramid filtered output signals corresponding to output signals produced by fourteen one-dimensional pyramid filters of order 2N−1; and pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1].
 17. The article of claim 16, wherein N is six; pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1] comprising output signals produced by four two-dimensional pyramid filters of order nine.
 18. The article of claim 16, wherein N is six; and wherein the pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid of order nine using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9), comprise pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters.
 19. The article of claim 18, wherein said one-dimensional pyramid filters comprise a sequence of scalable cascaded multiplierless operational units, each of said operational units capable of producing a different order pyramid filtered output signal sample stream.
 20. An image processing system comprising: an image processing unit to filter scanned color images; said image processing unit including at least one two-dimensional pyramid filter architecture; said at least one two-dimensional pyramid filter architecture comprising: a two-dimensional pyramid filter architecture of an order 2N−1, where N is a positive integer greater than five; said two dimensional pyramid filter architecture of order 2N−1, in operation, capable of producing, on respective-clock cycles, at least the following: pyramid filtered output signals corresponding to output signals produced by fourteen one-dimensional pyramid filters of order 2N−1; and pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1]; wherein the respective output signals in said two dimensional pyramid filter architecture are summed on respective clock cycles of said two dimensional pyramid filter architecture.
 21. The system of claim 20, wherein N is six; pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid filter of order [2(N−1)−1] using signal sample matrices of order [2(N−1)−1] comprising output signals produced by four two-dimensional pyramid filters of order nine.
 22. The system of claim 20, wherein N is six; and wherein the pyramid filtered output signals corresponding to output signals produced either by four two-dimensional pyramid filters or one two-dimensional pyramid of order seven using four signal sample matrices P_(i−1,j−1) ^(9×9), P_(i−1,j+1) ^(9×9), P_(i+1,j−1) ^(9×9), P_(i+1,j+1) ^(9×9), comprise pyramid filtered output signals produced by a plurality of one-dimensional pyramid filters.
 23. The system of claim 22, wherein said one-dimensional pyramid filters comprise a sequence of scalable cascaded multiplerless operational units, each of said operational units capable of producing a different order pyramid filtered output signal sample stream. 